package com.algorithm.stack;/*
 *@Author:DOWN
 *@Date:2021/12/29 10:35
 *@Comment:
 */

import com.algorithm.link.LinkedList;

public class LinkedRealizeStack<E> {
    private LinkedList<E> data;
    private int size;
    public LinkedRealizeStack(){
        data=new LinkedList<>();
        size=0;
    }
    /**
     * 将元素 x 推入栈中。
     * @param val 元素
     */
    public void push(E val) {
        data.addFirst(val);
        size=data.getSize();
    }

    /**
     * 删除栈顶的元素。
     */
    public void pop() {
        data.removeFirst();
        size=data.getSize();
    }

    /**
     * 获取栈顶元素。
     * @return int
     */
    public E top() {
        return data.find(0);
    }
}
